Db aplikace na ruznych serverech

Otázka od: Lada 'Ray' Lostak

26. 11. 2002 21:02

Zdravim...

    Mel bych maly dotaz. Mam Delphi aplikaci, ktera musi bezet na ruznych
SQL serverech. Je to mala vec - resim to tak, ze jako source pouzivam ODBC.
Ale jednu vec nemohu nikde v helpu najit. Mam 2 tabulky, provazane prez ID.
'Id' je autoincrement (serial, counter, ...).. Jde mi o to, aby zaroven s
vlozenim noveho zaznamu pres insert do teto tabulky, jsem se dostal k
vygenerovanemu ID zaznamu - v ramci jedne session/transakce. Mam to vyresene
se vsemi DB, ale s Microsoft Accessem (MDB) ne a ne... Konkretne mi jde o:

parent - tabulka obsahujici auto increment - 'Id'
slave - tabulka odkazujici se na parent.id

INSERT INTO parent(....) values (....)
INSERT INTO slave(id_parent,...) values(auto_increment_z_parentu)

Jedna z implementaci muze byt

INSERT INTO parent(...) values(...)
SELECT currval('parent_column_sequence_name')
INSERT INTO slave...

(vetsina objektovych db, ala postres)

Kde 'parent_column_sequence_name' je sequence, at jiz automaticka z CREATE
TABLE nebo z CREATE SEQUENCE. To je jedno...

Nevite prosim nekdo, jak na to v accessu ? Moznosti ala pridat timestamp
(tohle dokonce doporuciji na jedne help strance, jak nechutne  , pripadne
SELECT na zaklade vlozenych hodnot jsou k nicemu - prilis nespolehlive.

At hledam jak hledam, nemohu prijit na to, jak to provest....
Diky
Best regards,
Lada 'Ray' Lostak
Unreal64 Develop group
http://www.unreal64.net

--------------------------------------------------------------------------
In the 1960s you needed the power of two C64s to get a rocket
to the moon. Now you need a machine which is a vast number
of times more powerful just to run the most popular GUI.